package com.yiyuan.app.entity.po;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.guaike.core.mybatis.entity.BasePO;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * App用户表
 * </p>
 *
 * @author system
 * @since 2025-03-10
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("u_app_user")
public class UAppUserPO extends BasePO {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 我的邀请码
     */
    private String inviterCode;
    /**
     * ios用户唯一标识
     */
    private String iosSub;
    /**
     * 微信unionid
     */
    private String unionid;
    /**
     * 微信openid
     */
    private String openid;
    /**
     * 用户昵称
     */
    private String nickname;
    /**
     * 用户头像
     */
    private String avatarurl;
    /**
     * 性别
     */
    private String gender;
    /**
     * 省
     */
    private String province;
    /**
     * 市
     */
    private String city;
    /**
     * 国家
     */
    private String country;
    /**
     * 手机号
     */
    private String phone;
    /**
     * 微信授权session_key
     */
    private String sessionKey;
    /**
     * 登录的access_token
     */
    private String accessToken;
    /**
     * 是否实名（字典码：10000）
     */
    private Boolean isCertify;
    /**
     * 真是姓名
     */
    private String realName;
    /**
     * 身份证号
     */
    private String idCard;
    /**
     * 出生日期
     */
    private LocalDate brithday;
    /**
     * 实名时间
     */
    private LocalDateTime realTime;
    /**
     * 是否有特权（字典码：10000）
     */
    private Boolean isPrivilege;
    /**
     * 是否管理员（字典码：10000）
     */
    private Boolean isManage;
    /**
     * 状态（字典码：50038）
     */
    private Integer status;
    /**
     * 封禁数量
     */
    private Integer banCount;
    /**
     * 邀请日期
     */
    private LocalDate inviterDate;
    /**
     * 邀请人id
     */
    private Long inviterId;
    /**
     * 渠道编码
     */
    private String tenantId;
    /**
     * 逻辑删除（非0:已删除, 0:未删除）
     */
    @TableLogic(value = "0", delval = "now()")
    private Long deleted;



}
